package yxy.game.pm2.module.battle;

/**
 * 战斗类型
 */
public enum BattleType {
    CONQ(1), // 征战
    TOWER(2), // 爬塔
    DUNGEON(3), // 日常副本
    FORTDEFEAT(4), // 过关斩将
    GODWAR(5), // 战神殿
    BANDIT(6), // 剿匪
    ARENA(7), // 竞技场
    UNIONBOSS(8), // 联盟Boss
    UNIONFIGHT(9), // 联盟战
    INFINITE(10), // 神将试炼
    STAIRWAY(11), // 天梯
    MENGHUO(12), // 七擒孟获
    WUCHAO(13), // 乌巢
    KOW(14), // 天下第一
    PLAINSARENA(15), // 中原擂台
    CHIBI(16), // 火烧赤壁
    SOLORIDE(17), // 千里走单骑
    GUARD(18), // 守卫洛阳
    ACT_HOLIDAYCHALLENGE(19), // 节日BOSS
    YILING(20), // 夷陵之战
    THERION(21),//神兽
    BELOVEHERO(22),//心仪武将
    WEI_TOWER(23),//魏国塔
    SHU_TOWER(24),//蜀国塔
    WU_TOWER(25),//吴国塔
    QUN_TOWER(26),//群国塔
    PLAINSCRAFT(27),//中原争霸
    CAPTUREPOINTS(28),//斩关夺隘
    PASSBARRIER(29),//斩关夺隘
    TOPAREAN(30),//巅峰赛
    MATCHONLINE(31),//在线玩家匹配战斗
    // 活动战斗
    ACT_TIMECHALLENGE(100), // 限时挑战
    ;

    private int number;

    private BattleType(int number) {
        this.number = number;
    }

    public int getNumber() {
        return number;
    }

    public static BattleType forNumber(int value) {
        switch (value) {
            case 1:
                return CONQ;
            case 2:
                return TOWER;
            case 3:
                return DUNGEON;
            case 4:
                return FORTDEFEAT;
            case 5:
                return GODWAR;
            case 6:
                return BANDIT;
            case 7:
                return ARENA;
            case 8:
                return UNIONBOSS;
            case 9:
                return UNIONFIGHT;
            case 10:
                return INFINITE;
            case 11:
                return STAIRWAY;
            case 12:
                return MENGHUO;
            case 13:
                return WUCHAO;
            case 14:
                return KOW;
            case 15:
                return PLAINSARENA;
            case 16:
                return CHIBI;
            case 20:
                return YILING;
            case 21:
                return THERION;
            case 22:
                return BELOVEHERO;
            case 23:
                return WEI_TOWER;
            case 24:
                return SHU_TOWER;
            case 25:
                return WU_TOWER;
            case 26:
                return QUN_TOWER;
            case 27:
                return PLAINSCRAFT;
            case 28:
                return CAPTUREPOINTS;
            case 29:
                return PASSBARRIER;
            case 31:
                return MATCHONLINE;
            case 100:
                return ACT_TIMECHALLENGE;
            default:
                return null;
        }
    }
}